Thank you
Thank you for purchasing. If you have any questions that are beyond the scope of this documentation, please feel free to contact me.
Rate it if you like it.
Introduction
"Slant" Admin is a premium admin dashboard theme built with the Powerful AngularJS framework and Bootstrap 3. It is specially designed to give your admin panel a unique and elegant look. It is easy to customize and coded in developer friendly manner.
It is fully responsive admin dashboard template and is adaptive with any size viewport. Solid integration of reusable UI components and latest trending plugins. This theme can be used for type of project applications.
Slant Admin includes many angular based plugins. It is designed to be a complete admin panel for any web project.
File Structure
Within the download you'll find the following file structure and contents
Once downloaded, unzip the compressed folder and you'll see something like this:
Slant/ ├── Slant/ ───> Contains the develop version of Slant Admin Template. │ ├── app/ └──> All application files in this folder. │ │ ├── data/ └──> All API data files. │ │ ├── img/ └──> All the logo, favicon images etc. │ │ ├── js/ └──> All the custom scripts │ │ ├── css/ └──> All the custom stylesheets │ │ ├── partials/ └──> All the custom templates │ │ ├── index.min.html │ │ └── index.html │ ├── bower_components └──> All bower dependencies │ ├── grunt └──> All grunt task manager files │ ├── bower.json │ ├── Gruntfile.js │ └── package.json ├── version.txt/ ───> Contains the version of Slant Admin └── documentation/ ───> The help documentation is.
Important files description:
- "bower.json"
- is the JSON file of Twitter Bower (You can click the link to know more).
- "Gruntfile.js"
- is the configure file of Grunt (You can click the link to know more). It is used to configure or define tasks and load Grunt plugins.
- "package.json"
- is the JSON file of Grunt (You can click the link to know more). This file is used by npm to store metadata for projects published as npm modules. You will list grunt and the Grunt plugins your project needs as devDependencies in this file.
Installation
In order to utilize Grunt you will need to have installed Node.js on your computer. Also insure that you have NPM installed.
You can check if these are installed properly by opening up a Terminal (Linux or Mac) or Command Prompt (Windows)
and entering the command: node --version and npm --version These commands should output something similar to "v0.10.31" and "1.4.23" respectively.
Please note that any commands must be ran from the project's root folder.
Open the your project folder in the terminal
Once you have Node and npm installed open your terminal and change the directory to your project folder.
On the Mac you can just type
cd
into the command line and then drag and drop the project folder on to the terminal window. This will add the path of the project directory next to the cd you just typed. Hit return and you have changed to your project folder.
On Windows you will have to open cmd.exe and then type in
cd path\to\project\directory
and hit return to change into your project folder.
grunt-cli
In order to be able to run Grunt from the terminal you need to install a little tool called grunt-cli. "cli" stands for "comand line interface". This program only needs to be installed once. It is installed globally so it is available on your computer everywhere. grunt-cli is used to actually run the Grunt installation that we just installed in your project directory locally. This just means that each project can use a different version of Grunt locally without worry.
From the project's root folder type
npm install -g grunt-cli
into the command line and hit return.
Installing Grunt plugins
From the project's root folder type
npm install
into the command line.
Local Server Development
We've made it easy to develop and test on your local machine. You can start a local server by running the command
From the project's root folder type
npm start
into the command line.
This will start a local server and open up your browser.
Then you can start your browser and visit
http://localhost/app/or
http://localhost:8080/app/
Grunt Build Tool
This project supports build steps with Grunt. The supported Grunt tasks that this project ships with is:
- Bower Depenecy Inclusion
- Concatenate and minify js files.
- Concatenate and minify css files.
To build your project, from the project's root folder type
grunt build:angular
It will create the angular folder in your project root directory. You can access it in your brower at:
http://localhost/angular/
Bower Dependency Management
Bower is a front-end package manager for the web by Twitter.
Slant use Bower to manage all the front end dependencies, make things clean, tidy and simple.
If you haven't try Bower before, then give it a shot, it makes life easier, you'll fail in love with it.
Inside the bower.json file of Bower, you'll see the list dependencies (package name and version):
If you want to know more about the packages, you can click here. Search the package and click the link to know more.
To ensure you have all updated the Javascript libraries managed by bower, run the command
bower installin a terminal or command prompt while you are in the current working directory of the project.
"dependencies": {
"angular": "~1.3.11",
"angular-animate": "~1.3.11",
"angular-bootstrap": "~0.12.0",
"angular-bootstrap-colorpicker":"3.0.18",
"angular-chart.js":"~0.7.1",
"angular-cookies": "~1.3.11",
"angular-count-to":"*",
"angular-file-upload": "~1.1.1",
"angular-inview": "~1.5.0",
"angular-loading-bar": "~0.7.1",
"angular-notify": "~2.5.0",
"angular-perfect-scrollbar": "~0.0.4",
"angular-resource": "~1.3.11",
"angular-rickshaw": "~0.10.0",
"angular-sanitize": "~1.3.11",
"angular-smart-table": "~1.4.9",
"angular-touch": "~1.3.11",
"angular-ui-calendar": "~1.0.0",
"angular-ui-grid": "~3.0.0-rc.16",
"angular-ui-router": "~0.2.11",
"angular-ui-utils": "~0.2.1",
"angular-xeditable": "~0.1.8",
"animate.css": "~3.2.0",
"bootstrap": "~3.3.0",
"bootstrap-wysiwyg": "*",
"bootstrap-chosen": "~1.0.0",
"bootstrap-daterangepicker": "~1.3.17",
"bootstrap-tagsinput": "~0.4.2",
"bootstrap-touchspin": "~3.0.1",
"bower-jvectormap": "~1.2.2",
"Chart.js":"~1.0.1",
"chosen": "https://github.com/harvesthq/chosen/releases/download/v1.3.0/chosen_v1.3.0.zip",
"datatables": "~1.10.4",
"footable": "~2.0.3",
"flot": "~0.8.3",
"flot.tooltip": "~0.8.4",
"flot.orderbars": "*",
"flot-spline": "0.0.1",
"font-awesome": "~4.2.0",
"fullcalendar": "~2.2.1",
"html5sortable": "*",
"jquery": "~2.1.3",
"jquery.easy-pie-chart": "~2.1.6",
"jquery-knob":"~1.2.11",
"jquery.sparkline": "~2.1.2",
"moment": "~2.10.3",
"nestable": "*",
"ng-grid": "~2.0.13",
"ngImgCrop": "~0.2.0",
"ngmorris":"~0.0.1",
"ngstorage": "~0.3.0",
"oclazyload": "~1.0.1",
"perfect-scrollbar": "~0.5.1",
"plugins": "datatables/plugins#~1.0.1",
"textAngular": "~1.2.2",
"venturocket-angular-slider": "~0.3.2"
}
Automation with Grunt
Grunt is a JavaScript task runner (Automation), save yourself from repetitive tasks.
It's probably a bit complex to you if it's your first time using Grunt. However, you'll fail in love with it once you get it, it saves you from repetitive tasks. Project like jQuery, Bootstrap and many more use and love GruntJS.
- "Gruntfile.js"
- is the configure file of Grunt (You can click the link to know more). It is used to configure or define tasks and load Grunt plugins.
- "package.json"
- is the JSON file of Grunt (You can click the link to know more). This file is used by npm to store metadata for projects published as npm modules. You will list grunt and the Grunt plugins your project needs as devDependencies in this file.
Inside package.json file, you'll see all the Grunt plugins that help to automate the tasks.
And all the plugins are configured in Gruntfile.coffee file.
If you want to know more about the plugins, you can click here.
"devDependencies": {
"grunt": "^0.4.5",
"grunt-bower-install-simple": "^0.9.3",
"grunt-bump": "0.0.15",
"grunt-changelog": "^0.2.2",
"grunt-contrib-clean": "^0.6.0",
"grunt-contrib-concat": "^0.5.0",
"grunt-contrib-copy": "^0.5.0",
"grunt-contrib-htmlmin": "^0.3.0",
"grunt-contrib-uglify": "^0.5.1",
"grunt-recess": "^1.0.0",
"grunt-swig": "^0.2.1",
"gruntfile-gtx": "^0.3.0",
"http-server": "^0.6.1",
"require-directory": "^2.0.0"
}
Global App Scope
Configure Global App Variables
Open main.js file (app/js/app.main.js) and Change the Global App Scope like Project name, version according to your needs.
you can change the default layout as follows:
- menuFolded: true if you want to initialize the template collapsed side menu.
- chatFolded: true if you want to initialize the template collapsed chat api.
- layoutBoxed: true if you want to initialize the template as boxed layout.
- menuProfile: false if you want to display user profile in main menu.
- searchOpen: true if you want to display search bar as open in header top bar.
Configure Navigation Menu
Open nav.html file (app/partials/components/nav.html)
Find ul with class .wrapper-menu and change or add a menu item in the list as follows:
<li ui-sref-active="active">
<a ui-sref="app.ui.typography">Typography</a>
</li>
Configure App Router
Open app.router.js file (app/js/app.router.js)
Set up your states in the module config, as in the following:
.state('app.ui.typography', {
url: '/typography',
templateUrl: 'partials/ui-typography.html'
})
.state('app.ui.accordion', {
url: '/accordion',
templateUrl: 'partials/ui-accordion.html'
})
Configure lazyload Dependencies
To dynamically load dependencies at runtime when we change states we use oclazyload.
Open app.lazyload.js file (app/js/app.lazyload.js) and configure your modules as below:
modules: [
{
name: 'ngGrid',
files: [
'../bower_components/ng-grid/build/ng-grid.min.js',
'../bower_components/ng-grid/ng-grid.min.css',
'../bower_components/ng-grid/ng-grid.bootstrap.css'
]
}
]
CSS Utilities
Bootstrap CSS
For the bootstrap css and components, please check the Bootstrap 3
Angular UI Bootstrap, This project does not use bootstrap.js, but use Angular UI Bootstrap written in pure AngularJS, check UI Boostrap and Official Documents
Icons
- FontAwesome icons
Check FontAwesome for more details to see how to use and examples
- Glyphicons
Bootstrap default icons
Animate
animate.css is a bunch of cool, fun, and cross-browser animations for you to use in your projects. Great for emphasis, home pages, sliders, and general just-add-water-awesomeness.
Colors
This app uses as color palette as below
Open main.js file (app/js/app.main.js) to view the color settings:
The Grid
See how aspects of the Bootstrap grid system work across multiple devices with a handy table.
| Extra small devices Phones (<768px) | Small devices Tablets (≥768px) | Medium devices Desktops (≥992px) | Large devices Desktops (≥1200px) | |
|---|---|---|---|---|
| Grid behavior | Horizontal at all times | Collapsed to start, horizontal above breakpoints | ||
| Container width | None (auto) | 750px | 970px | 1170px |
| Class prefix | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
| # of columns | 12 | |||
| Column width | Auto | ~62px | ~81px | ~97px |
| Gutter width | 30px (15px on each side of a column) | |||
| Nestable | Yes | |||
| Offsets | Yes | |||
| Column ordering | Yes | |||
CSS Utilities
In addition to the default bootstrap css, package includes classes that can help you speed up your development work
| Margin | |
|---|---|
.no-margin |
margin: 0 |
.margin-bottom-0 |
margin-bottom: 0 |
.margin-bottom-5 |
margin-bottom: 5px |
.margin-bottom-10 |
margin-bottom: 10px |
.margin-bottom-15 |
margin-bottom: 15px |
.margin-bottom-20 |
margin-bottom: 20px |
.margin-bottom-25 |
margin-bottom: 25px |
.margin-bottom-30 |
margin-bottom: 30px |
.margin-top-0 |
margin-top: 0 |
.margin-top-5 |
margin-top: 5px |
.margin-top-10 |
margin-top: 10px |
.margin-top-15 |
margin-top: 15px |
.margin-top-20 |
margin-top: 20px |
.margin-top-25 |
margin-top: 25px |
.margin-top-30 |
margin-top: 30px |
.margin-right-0 |
margin-right: 0 |
.margin-right-5 |
margin-right: 5px |
.margin-right-10 |
margin-right: 10px |
.margin-right-15 |
margin-right: 15px |
.margin-right-20 |
margin-right: 20px |
.margin-right-25 |
margin-right: 25px |
.margin-right-30 |
margin-right: 30px |
.margin-left-0 |
margin-left: 0 |
.margin-left-5 |
margin-left: 5px |
.margin-left-10 |
margin-left: 10px |
.margin-left-15 |
margin-left: 15px |
.margin-left-20 |
margin-left: 20px |
.margin-left-25 |
margin-left: 25px |
.margin-left-30 |
margin-left: 30px |
| Padding | |
|---|---|
.no-padding |
padding: 0 |
.padding-bottom-0 |
padding-bottom: 0 |
.padding-bottom-5 |
padding-bottom: 5px |
.padding-bottom-10 |
padding-bottom: 10px |
.padding-bottom-15 |
padding-bottom: 15px |
.padding-bottom-20 |
padding-bottom: 20px |
.padding-bottom-25 |
padding-bottom: 25px |
.padding-bottom-30 |
padding-bottom: 30px |
.padding-top-0 |
padding-top: 0 |
.padding-top-5 |
padding-top: 5px |
.padding-top-10 |
padding-top: 10px |
.padding-top-15 |
padding-top: 15px |
.padding-top-20 |
padding-top: 20px |
.padding-top-25 |
padding-top: 25px |
.padding-top-30 |
padding-top: 30px |
.padding-right-0 |
padding-right: 0 |
.padding-right-5 |
padding-right: 5px |
.padding-right-10 |
padding-right: 10px |
.padding-right-15 |
padding-right: 15px |
.padding-right-20 |
padding-right: 20px |
.padding-right-25 |
padding-right: 25px |
.padding-right-30 |
padding-right: 30px |
.padding-left-0 |
padding-left: 0 |
.padding-left-5 |
padding-left: 5px |
.padding-left-10 |
padding-left: 10px |
.padding-left-15 |
padding-left: 15px |
.padding-left-20 |
padding-left: 20px |
.padding-left-25 |
padding-left: 25px |
.padding-left-30 |
padding-left: 30px |
Core & Plugins
You must know AngularJS, "ui-router" and "ui-jq" to get started your project.
ui-router
ui-router for Nested Routing and Nested View, check the official documents
ui-load
ui-load for lazy loading the js and css files.
ui-load also used in the ui-router resolve:{} for lazy loading Angular Directives, Controllers and Services.
ui-jq
ui-jq Call the jQuery function or plugin specified on the element. check the official documents
ui-module
ui-module Load other dependences for child directive. you need config the dependences in "js/app.js" constant "MODULE_CONFIG".
example: check the "ui-select2" directive on "form/element"
ui-validate
The ui-validate directive makes it very easy to create custom validator expressions. check the official documents
Plugins
All jQuery plugins are depended on ui-jq, do not need create the Angular Directive for each of the plugin. you can config in the app/js/app.js Angular Constant JQ_CONFIG, functionName => pluginPath, the js and css files are lazy loaded.
jQuery
Check the online document.
angular-bootstrap
Check the online document.
morris.js
Check the online document.
textAngular
Check the online document.
angular-bootstrap-colorpicker
Check the online document.
angular-bootstrap-datetimepicker
Check the online document.
angular-chart.js
Check the online document.
FullCalendar
Check the online document and Angular Fullcalendar Wrapper
angular-perfect-scrollbar
Check the online document.
angular-rickshaw
Check the online document.
angular-smart-table
Check the online document.
angular-ui-grid
Check the online document.
angular-ui-utils
Check the online document.
angular-xeditable
Check the online document.
Datatables
Check the online document.
Chosen
Check the online document.
Check the online document.
Slider
Check the online document.
TouchSpin
Check the online document.
WYSISYG
Check the online document.
angular-count-to
Check the online document.
angular-file-upload
Check the online document.
angular-inview
Check the online document.
angular-loading-bar
Check the online document.
angular-notify
Check the online document.
Flotchart
Check the online document.
Sparklines
Check the online document.
Easy pie chart
Check the online document.
Sortable
Check the online document.
Nestable
Check the online document.
Check the online document.
JvectorMap
Check the online document.
bootstrap-tagsinput
Check the online document.
footable
Check the online document.
aterrien/jQuery-Knob
Check the online document.
ng-grid
Check the online document.
ng-img-crop
Check the online document.
oclazyload
Check the online document.
perfect-scrollbar
Check the online document.
angular-slider
Check the online document.